System and method for reducing pin-count of memory devices, and memory device testers for same

ABSTRACT

Methods, memory devices and systems are disclosed. In one embodiment, a non-volatile memory device receives command signals through the same input/output terminals that receive address signals and write data signals and transmit read data signals. The input/output terminals are connected to a multiplexer, which is responsive to a received mode control signal to couple the input/output terminals to either a command bus or an input/output bus. A latch in the memory device latches the command signals when the mode control signal causes the input/output terminals to be coupled to the input/output bus. As a result, the command signals continue to be applied to the command bus. When the mode control signal causes the input/output terminals to be coupled to the input/output bus, write data signals are clocked into the memory device and read data signals are clocked out of the memory device responsive to a received clock signal.

CROSS-REFERENCE TO RELATED APPLICATION

This application is a divisional of U.S. patent application Ser. No. 11/891,506, filed Aug. 10, 2007. This application is incorporated by reference herein.

TECHNICAL FIELD

This invention relates generally to memory devices, and, more particularly, to a memory device and method having a reduced pin count, as well as to a memory device tester.

BACKGROUND OF THE INVENTION

Integrated circuits, such as memory devices, are housed in a package having externally accessible terminals known as “pins” for coupling power and signals to the integrated circuits and signals from the integrated circuits. The pins are internally connected to bonding pads fabricated with circuitry on a semiconductor substrate. As the level of integration continues to increase, the number of bonding pads and resulting pins in an integrated circuit can correspondingly increase. These increases in the pin count of integrated circuits can present a variety of problems. For example, a high pin count can reduce the ability to test integrated circuits in a cost-efficient manner. This problem is exemplified by a testing system 10 shown in FIG. 1 in which a tester 12 is being used to test a pair of integrated circuit NAND flash memory devices 14 a,b. The tester 12 has 32 input/output (IO) terminals 16 as well as several terminals 18 on which ground and power at various voltages are output. Each NAND flash memory device 14 a,b includes eight IO terminals 20, and seven command terminals 22. Address signals and write data signals are received at the IO terminals 20, and read data signals are transmitted from the IO terminals 20. The command terminals 22 receive seven respective command signals, specifically an address latch enable signal ALE, a command latch enable signal CLE, an active low chip enable signal CE#, an active low read enable signal RE#, an active low write enable signal WE#, a PRE signal and a write protect signal WP#. As is well-known in the art, the ALE signal latches an address applied to the IO terminals 20 into an address latch (not shown), the CLE signal latches a command applied to the command terminals 22 into a command latch (not shown), the CE# signal enables an access to the memory device, the RE# signal is used to clock read data from the memory device, the WE# signal is used to clock write data into the memory device, the PRE signal is used to cause the memory device to read a predetermined page of memory cells at power-up, and the WP# signal is used to prevent data stored in the memory device from being overwritten.

During testing, the power/ground terminals 18 of the tester 12 are connected to appropriate terminals of the memory devices 14 a,b. The IO terminals 16 of the tester 12 are then connected to the IO terminals 20 and the command terminals 22 of the memory devices 14 a,b through either the externally accessible pins of the memory devices 14 a,b or through a probe card (not shown), which makes contact with bonding pads fabricated on the integrated circuit substrate of the memory devices 14 a,b. To test two memory devices simultaneously, the 15 terminals (i.e., eight IO terminals 20 and seven command terminals 22) of each of the memory devices 14 a,b must be connected to 30 of the 32 IO terminals 16 of the tester 12. As explained in greater detail below, the need to connect the memory devices 14 a,b to the tester 12 in this manner can result in several problems and limitations.

The present inventors have determined that there is a need for a system and method for reducing the pin count of integrated circuit memory devices, as well as testing systems for interfacing with such integrated circuit memory devices.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram of a prior art testing system for testing a plurality of NAND flash memory devices.

FIG. 2 is a block diagram of a multiplexing system for reducing the pin count of integrated circuit memory devices according to one example of the invention.

FIG. 3 is a timing diagram showing the signals applied to a memory device containing the system of FIG. 2 to perform a page read operation according to one embodiment of the invention.

FIG. 4 is a timing diagram showing the signals applied to a memory device containing the system of FIG. 2 to perform a program operation according to one embodiment of the invention.

FIG. 5 is a block diagram of a testing system for testing a plurality of memory devices containing the system of FIG. 2 according to one embodiment of the invention.

FIG. 6 is a block diagram of one embodiment of a memory device using the pin count reducing system of FIG. 2 or some other embodiment of the invention.

FIG. 7 is a block diagram of an embodiment of a processor-based system using the memory device of FIG. 6 or a memory device according to some other embodiment of the invention.

DETAILED DESCRIPTION

The prior art tester 12 and the NAND flash memory devices 14 a,b shown in FIG. 1 can be connected to each other for testing in a variety of configurations, one of which is shown in Table 1, below:

TABLE 1 Tester Memory Memory 12 Device 14a Device 14b IO-0 IO-0 IO-1 IO-1 IO-2 IO-2 IO-3 IO-3 IO-4 IO-4 IO-5 IO-5 IO-6 IO-6 IO-7 IO-7 IO-8 ALE IO-9 CL# IO-10 CE# IO-11 RE# IO-12 WE# IO-13 PRE IO-14 WP# IO-15 IO-16 IO-0 IO-17 IO-1 IO-18 IO-2 IO-19 IO-3 IO-20 IO-4 IO-21 IO-5 IO-22 IO-6 IO-23 IO-7 IO-24 ALE IO-25 CL# IO-26 CE# IO-27 RE# IO-28 WE# IO-29 PRE IO-30 WP# IO-31

It will be apparent from Table 1 that the tester 12 can test only two of the NAND flash memory devices 14 a,b at the same time. Conventional integrated circuit testers, such as the tester 12, are very expensive. It would therefore be desirable to be able to test more than two of the NAND flash memory devices 14 a,b at the same time. For example, if the tester 12 could simultaneously test three of the NAND flash memory devices 14, the capital cost of testing could be reduced by as much as 33 percent.

The problem of integrated circuit memory devices, such as the NAND flash memory device 14, having a large pin count can also cause problems outside of the testing arena. For example, a high pin count generally results in a larger number of conductors fabricated on a substrate on which the memory device is mounted. If memory devices are mounted on the substrate with a high density, it can be difficult to provide enough room on a surface of the substrate to carry the correspondingly large number of conductors.

A multiplexing system 50 for reducing the pin count of a NAND flash memory device according to one embodiment of the invention is shown in FIG. 2. The multiplexing system 50 includes a command/input-output (“CMD/IO”) multiplexer 54 that has eight externally accessible IO terminals 56. In addition, the system 50 has a terminal 58 that receives a CMD/IO control signal for the multiplexer 54 and a clock terminal 60 that receives a clock CLK signal. The CMD/IO# control signal causes the multiplexer 54 to connect the externally accessible IO terminals 56 through an IO bus 66 to an eight-input IO latch 62 or through a command bus 68 to a seven-input command latch 64. The IO latch 62 stores the received IO signals responsive to an internal WE_ signal received from the command latch 64. The IO latch 62 also stores the IO signals that are to be transmitted responsive to an internal RE_ signal received from the command latch 64. In addition to generating the internal WE_ and RE_ signals, the command latch 64 stores the received command signals. The IO latch 62 is connected to eight internal IO lines 70, and the command latch 64 is connected to seven internal control lines 72. The internal IO lines 70 are connected to the IO terminals of an IO control circuit (not shown) normally found in conventional flash memory devices, and the internal control lines 72 are connected to the terminals of a control logic unit (not shown) normally found in conventional flash memory devices.

In operation, when the CMD/IO# signal is high, the multiplexer 54 connects seven of the eight externally accessible IO terminals 56 to respective ones of the internal control lines 72 through the command latch 64. The IO control circuit (not shown) can then receive control signals in a conventional manner. When the CMD/IO# signal is low, the multiplexer 54 connects the eight externally accessible IO terminals 56 to respective ones of the internal IO lines 70 through the IO latch 62. However, the transition of the CMD/IO# signal from high-to-low causes the multiplexer 54 to latch the command signals so that the control signals continue to be present on the internal control lines 72 when the internal IO lines 70 are connected to the externally accessible IO terminals 56.

One potential problem with the operation of the multiplexer 54 as described above is that, when the multiplexer 54 is connecting the internal IO lines 70 to the externally accessible IO terminals 56 for the purpose of receiving read data or transmitting write data, the internal control lines 72 are isolated from the externally accessible IO terminals 56. As a result, there is no way to toggle the internal RE_(—) and WE_ signals present on the internal control lines 72 for the purpose of strobing the read data from the memory device or the write data into the memory device as is conventionally done to transfer write data to or read data from a memory device. This problem is solved by coupling the CLK signal to the command latch 64 and using circuitry in the command latch 64 that toggles the internal RE_ signal applied to the IO latch 62 responsive to the CLK signal if the received RE# Clken signal was low when the CMD/IO# signal transitioned from high-to-low. Similarly, circuitry in the command latch 64 toggles the WE_ applied to the IO latch 62 responsive to the CLK signal if the received WE# Clken signal was low when the CMD/IO# signal transitioned from high-to-low. As a result, write data or addresses can be clocked into the memory device and read data can be clocked from the memory device even though command signals are not being applied to the command latch 64.

The operation of the multiplexing system 50 for a page read operation is shown in FIG. 3. At time t₀, a stimulus (“01010010”) is applied to the externally accessible IO terminals 56. The multiplexer 54 couples this stimulus to the command latch 64 because the CMD/IO# signal is high at time t₀, as also shown in FIG. 3. The CMD/IO# signal then transitions low prior to time t₁. This high-to-low transition latches the command signals as explained above, and it couples the externally accessible IO terminals 56 to the IO latch 62 so that the latch 62 can receive the command information at time t₁. The CMD/IO# signal then transitions high again prior to time t₂. During t₂ the command pins are conditioned to prepare for address signals at times t₃-t₇. At t₈, the CMD/IO# signal transitions high in preparation for the read command to be confirmed during t₉. During t₉, the RE# Clken signal transitions high with the CMD/IO# signal high to couple the high RE# Clken signal to the command latch 64. When the CMD/IO# again transitions low, the high RE# signal is latched at the input to the command latch 64. As a result, the RE_ signal that the command latch 64 applies to the IO latch 62 toggles responsive to the CLK signal, thereby clocking read data from the IO latch 62 to the externally accessible IO terminals 56 through the multiplexer 54.

The operation of the multiplexing system 50 for a program operation is shown in FIG. 4. At time t₀, a stimulus (“01010010”) is applied to the externally accessible IO terminals 56. The multiplexer 54 couples this stimulus to the command latch 64 because the CMD/IO# signal is high at time t₀. The CMD/IO# signal then transitions low prior to time t₁ to latch the command signals and couple the externally accessible IO terminals 56 to the IO latch 62 so that the latch 62 can receive the program command at t₁. The CMD/IO# then transititions high again to condition the IO terminals 56 to receive address signals at times t₃-t₇. At t₈, the CMD/IO# signal transitions high to allow the program data to be input. The WE# Clken signal transitions high with the CMD/IO# signal high to couple the high WE# Clken signal to the command latch 64. When the CMD/IO# again transitions low, the high WE# Clken signal is latched at the input to the command latch 64. As a result, the WE_ signal that the command latch 64 applies to the IO latch 62 toggles responsive to the CLK signal, thereby clocking write data into the IO latch 62 through the multiplexer 54. Once data input has been completed, the CMD/IO# signal will go high once again to condition the command latch 64 to allow for the input of the program confirm command.

The ability to multiplex command and IO signals allows the tester 12 to test a greater number of memory devices containing the multiplexing system 50. For example, as shown in FIG. 5, three memory devices 14 a,b,c are connected to the tester 12 using the terminal assignment shown in Table 2, below:

TABLE 2 Tester Memory Memory Memory 12 Device 14a Device 14b Device 14c IO-0 IO-0 OR ALE IO-1 IO-1 OR CLE IO-2 IO-2 OR CE# IO-3 IO-3 OR RE# Clken IO-4 IO-4 OR WE# Clken IO-5 IO-5 OR PRE IO-6 IO-6 OR WP# IO-7 IO-7 IO-8 CMD/IO# IO-9 CLK IO-10 IO-0 OR ALE IO-11 IO-1 OR CLE IO-12 IO-2 OR CE# IO-13 IO-3 OR RE# Clken IO-14 IO-4 OR WE# Clken IO-15 IO-5 OR PRE IO-16 IO-6 OR WP# IO-17 IO-7 IO-18 CMD/IO# IO-19 CLK IO-20 IO-0 OR ALE IO-21 IO-1 OR CLE IO-22 IO-2 OR CE# IO-23 IO-3 OR RE# Clken IO-24 IO-4 OR WE# Clken IO-25 IO-5 OR PRE IO-26 IO-6 OR WP# IO-27 IO-7 IO-28 CMD/IO# IO-29 CLK IO-30 IO-31

It can be seen from Table 2 that the tester 12 is able to simultaneously test 3 of the memory devices 14 a-c, thereby reducing the capital cost of testing the memory devices 14 by approximately one-third. Further reductions in the capital cost of testing may be achieved in other embodiments possibly using other testing systems by sharing the CMD/IO# and CLK signals among several memory devices rather than providing each of the memory devices 14 with its own CMD/IO# and CLK signals.

A NAND flash memory device 100 using the multiplexing system 50 shown in FIG. 2 is shown in FIG. 6. The flash memory device 100 includes an array 130 of flash memory cells arranged in banks of rows and columns. The address signals and the write data signals are applied to the memory device 100 as sets of sequential input/output (“I/O”) signals transmitted through an I/O bus 134 and applied to the multiplexing system 50, as explained above. Similarly, read data signals are output from the flash memory device 10 to the I/O bus 134 through the multiplexing system 50. The I/O bus 134 is connected by the multiplexing system 50 to an I/O control unit 140 that routes data signals to and from an internal data bus 142 and address signals to an address register 144 for coupling to an internal address bus 146. The flash memory device 100 also includes a control logic unit 150 that receives a number of control signals from the multiplexing system 50 as explained above to control the operation of the memory device 100. The address register 144 applies row address signals to a row decoder 160, and column address signals to a column decoder 164. The row decoder 160 includes a word line driver system which drives the word lines of the memory array 130 with appropriate voltages corresponding to the decoded row address signals and the type of memory operation. Similarly, the column decoder 164 enables write data signals to be applied to bit lines for columns corresponding to the column address signals and allow read data signals to be coupled from bit lines for columns corresponding to the column address signals.

In response to the memory commands decoded by the control logic unit 150, the flash memory cells in the array 130 are erased, programmed, or read. The memory array 130 is programmed on a row-by-row or page-by-page basis. After the row address signals have been applied to the address register 144, the I/O control unit 140 routes write data signals to a cache register 170. The write data signals are stored in the cache register 170 in successive sets each having a size corresponding to the width of the internal data bus 142. The cache register 170 sequentially stores the sets of write data signals for an entire row or page of flash memory cells in the array 130. All of the stored write data signals are then used to program a row or page of memory cells in the array 130 selected by the row address coupled through the internal address bus 146. In a similar manner, during a read operation, data signals from a row or page of memory cells selected by the row address coupled through the internal address bus 146 are stored in a data register 180. Sets of data signals corresponding in size to the width of the internal data bus 142 are then sequentially transferred through the I/O control unit 140 from the data register 180 to the I/O bus 134 through the multiplexing system 50.

FIG. 7 is a block diagram of a system 200 that includes circuitry 202 having a memory device 210. The circuitry 202 is coupled through address, data, and control buses to the memory device 210 to provide for writing data to and reading data from the memory device 210. The circuitry 202 includes circuitry for performing various processing functions, such as executing specific software to perform specific calculations or tasks. The system 200 also includes one or more input devices 204 coupled to the circuitry 202 to allow an operator to interface with the system 200. Examples of input devices 204 include keypads, touch screens, and scroll wheels. The system 200 also includes one or more output devices 206 coupled to the circuitry 202 to provide output information to the operator. In one example, the output device 206 is a visual display providing visual information to the operator. A data storage device 208 is also coupled to the circuitry 202 to store data that is to be retained even when power is not supplied to the system 200 or to the data storage device 208. According to one embodiment of the invention, the data storage device 208 is implemented using the memory device 100 of FIG. 6 or a memory device according to some other embodiment of the invention.

Although the multiplexing system 50 has been explained primarily in the context of increasing the number of memory devices that can be simultaneously tested, it will be understood that the system 50 can also provide a memory device with advantages even when the memory device is not being tested.

From the foregoing it will be appreciated that, although specific embodiments of the invention have been described herein for purposes of illustration, various modifications may be made without deviating from the spirit and scope of the invention. Accordingly, the invention is not limited except as by the appended claims. 

1-18. (canceled)
 19. A memory device, comprising: a multiplexer having a first set of terminals, a second set of terminals, a third set of terminals and a control terminal, the multiplexer being operable to couple the first set of terminals to the second set of terminals responsive to a signal applied to the control terminal having a first logic level, the multiplexer further being operable to couple the first set of terminals to the third set of terminals responsive to the signal applied to the control terminal having a second logic level that is different from the first logic level; a control logic unit coupled to the second set of terminals; an address decoder; an array of memory cells; and an I/O control unit coupled to the third set of terminals, the I/O control unit being operable to couple the third set of terminals to either the address decoder or the array of memory cells.
 20. The memory device of claim 19 further comprising a circuit operable to receive a clock signal and being operable to capture write data signals coupled from the first set of terminals to the third set of terminals responsive to transitions of the clock signal.
 21. The memory device of claim 19 further comprising a circuit operable to receive a clock signal and being operable to output write data signals coupled from the first set of terminals responsive to transitions of the clock signal.
 22. The memory device of claim 19, further comprising a latch having input terminals coupled to the second set of terminals of the multiplexer and output terminals coupled to the control logic unit, the latch receiving the signal applied to the control terminal of the multiplexer and being operable to latch signals present on the second set of terminals of the multiplexer responsive to the signal applied to the control terminal of the multiplexer transitioning from the first logic level to the second logic level.
 23. The memory device of claim 19 wherein the array of memory cells comprises an array of non-volatile memory cells. 24-35. (canceled)
 36. A memory device, comprising: a multiplexer coupled to externally accessible terminals, a data/address bus, a command bus, and a control node, the multiplexer being configured to couple the externally accessible terminals to the command bus responsive to a signal applied to the control node having a first logic level, and the multiplexer further being configured to couple the externally accessible terminals to the data/address bus responsive to the signal applied to the control node having a second logic level that is different from the first logic level; a control logic unit coupled to the command bus; an address decoder coupled to the data/address bus; and an array of memory cells coupled to the data/address bus.
 37. The memory device of claim 36, further comprising an I/O control unit coupled to the data/address bus, the I/O control unit being configured to couple the data/address bus to either the address decoder or the array of memory cells.
 38. The memory device of claim 36, further comprising a circuit configured to receive a clock signal and being configured to capture write data signals coupled from the externally accessible terminals responsive to transitions of the clock signal.
 39. The memory device of claim 36, further comprising a circuit configured to receive a clock signal and being configured to output read data signals coupled from the array of memory cells responsive to transitions of the clock signal.
 40. The memory device of claim 36, further comprising a latch having a set of signal nodes coupled to the command bus and a set of signal nodes coupled to the control logic unit, the latch being configured to latch signals present on the command bus responsive to the signal applied to the control node of the multiplexer transitioning from the first logic level to the second logic level.
 41. The memory device of claim 36 wherein the address decoder comprises a row address decoder and a column address decoder.
 42. The memory device of claim 36, further comprising a latch having a set of signal nodes coupled to the data/address bus and a set of signal nodes coupled to the address decoder coupled and the data/address bus, the latch being configured to latch signals present on the data/address bus responsive to receiving a write signal.
 43. The memory device of claim 42 wherein the write signal comprises a write enable signal.
 44. The memory device of claim 36, further comprising a latch having a set of signal nodes coupled to the data/address bus and a set of signal nodes coupled to the address decoder coupled and the data/address bus, the latch being configured to latch signals present on the data/address bus responsive to receiving a read signal.
 45. The memory device of claim 44 wherein the read signal comprises a read enable signal.
 46. A memory device, comprising: a control circuit; an addressing circuit; a data path; an array of memory cells coupled to the data path, the control circuit and the addressing circuit, the array of memory cells being configured to allow the control circuit to cause data to be written to or read from a location in the array determined by the addressing circuit; and a first signal routing circuit coupled to a bus, the control circuit, the addressing circuit and the data path, the first signal routing circuit being configured to selectively couple the bus to either the control circuit or to the addressing circuit and data path.
 47. The memory device of claim 46, wherein the first signal routing circuit comprises a multiplexer coupled to the bus, the control circuit, the addressing circuit and the data path.
 48. The memory device of claim 46, further comprising a second signal routing circuit coupled to the first signal routing circuit, the second signal routing circuit being configured to selectively couple the first signal routing circuit to either the addressing circuit or the data path
 49. The memory device of claim 46 wherein the first signal routing circuit is configured to continue applying to the control circuit signals that were present on the bus when the first signal routing circuit coupled the bus to the addressing circuit and data path.
 50. The memory device of claim 46 wherein the array of memory cells comprise an array of non-volatile memory cells.
 51. The memory device of claim 46, further comprising a cache register coupled to the data path and the array of memory cells, the cache register being configured to store sets of write data received through the data path and to subsequently couple a plurality of sets of the stored write data to the array of memory cells.
 52. The memory device of claim 46, further comprising a data register coupled to the data path and the array of memory cells, the data register being configured to store a plurality of sets of the stored write data received from the array of memory cells and to subsequently couple each of the stored sets of the read data to the data path.
 53. A system, comprising: a processor; system memory coupled to the processor; a user interface device coupled to the processor; and a memory device coupled to the processor, the memory device comprising: a multiplexer coupled to the processor, a data/address bus, a command bus, and a control node, the multiplexer being configured to couple the processor to the command bus responsive to a signal applied to the control node having a first logic level, and the multiplexer further being configured to couple the processor to the data/address bus responsive to the signal applied to the control node having a second logic level that is different from the first logic level; a control logic unit coupled to the command bus; an address decoder coupled to the data/address bus; and an array of memory cells coupled to the data/address bus.
 54. The system of claim 53, further comprising an I/O control unit coupled to the data/address bus, the I/O control unit being configured to couple the data/address bus to either the address decoder or the array of memory cells.
 55. The system of claim 53, further comprising a latch having a set of signal nodes coupled to the command bus and a set of signal nodes coupled to the control logic unit, the latch being configured to latch signals present on the command bus responsive to the signal applied to the control node of the multiplexer transitioning from the first logic level to the second logic level.
 56. A multiplexing system, comprising: a command/input-output multiplexer coupled to a command/input-output bus, a command bus and an input-output bus, the command/input-output multiplexer being configured to couple the command/input-output bus to either the command bus or the input-output bus; a data latch coupled to the command/input-output multiplexer through the input-output bus, the data latch being configured to store signals coupled through the input-output bus responsive to receiving a latch signal at a latch input and to output the stored signals; and a command latch coupled to the command/input-output multiplexer through the command bus, the command latch being configured to store signals coupled through the command bus responsive to the command/input-output multiplexer switching from coupling the command/input-output bus to the command bus to coupling the command/input-output bus to the input-output bus.
 57. The multiplexing system of claim 56 wherein the command latch is coupled to the latch input of the data latch, and wherein the command latch is configured to receive a clock signal and to apply the latch signal to the latch input of the data latch responsive to transitions of the clock signal.
 58. The multiplexing system of claim 57 wherein the latch signal comprises a write enable signal or a read enable signal. 